<?php

/*
  voici a quoi ressemble une ligne CSV
  
    [0] => Numero de la ligne de vente
    [1] => Date
    [2] => Emplacement
    [3] => Numero Transaction
    [4] => Prix de vente
    [5] => Prix d'achat
    [6] => Deposite Price
    [7] => TVA
    [8] => Code Famille
    [9] => Nom Famille
    [10] => Code produit
    [11] => Produit


    La procedure stocker est de la forme
    projlibre.`insert_produit`(
			IN name VARCHAR(64),
			IN codeprd varchar(25), 
			IN IdCat INT(11), 
			IN IdMag INT, 
			IN price FLOAT(6,3), 
			IN TvaPrice FLOAT(6,3), 
			IN cell VARCHAR(10), 
			IN NomFournisseur VARCHAR(64), 
			IN PriceFournisseur FLOAT(6,3), 
			IN TvaFournisseur FLOAT(6,3), 
			IN qte INT(11), 
			IN Maximum INT(11)
		)
*/

function import_db_line_csv($line, $id_mag, $n)
{
	global $connect;
	
 $args = explode(";", $line);
 if (count($args) < 11)
 	return (FALSE);
 $args = str_replace("'", "", $args);
 foreach ($args as $key=>$val)
 	if ($key < 12)
 	{
 		if ($key == 1)
 		{
 			if (($val = strtotime($val)) == FALSE)
 				throw new Exception("Format de la date de vente impossible a convertir.");
 			$val = date("Y-m-d h:i", $val);
		}
 		$args[$key] = mysql_real_escape_string($val);
 	}
 	else
	 	unset($args[$key]);
	$args[] = "$id_mag";
 $args = "call insert_vente('".implode("','", $args)."');";
	mysql_query($args, $connect) or die("Impossible d'executer la requete car:".mysql_error());
 return (TRUE);
}

$fd = null;
$i = 0;
$connect = null;
try
{

	$connect = mysql_connect("localhost","root","");
	mysql_select_db("projlibre", $connect);	
  
  $target_path = "tmp/";
  
  $target_path = $target_path . basename( $_FILES['file_csv']['name']); 
  
  echo "[$i]Envoie: ".  basename( $_FILES['file_csv']['name']); $i++;
  if(!move_uploaded_file($_FILES['file_csv']['tmp_name'], $target_path))
     throw new Exception("Impossible de recuperer le fichier sur le serveur.");
  echo " .... OK<br />";
 
 
  echo "[$i] Ouverture du fichier: ";$i++;
 if (!($fd = fopen($target_path, "r")))
    throw new Exception("Impossible d'ouvrir le fichier sur le site.");
 echo " .... OK<br />"; $i++;
 
 $k = 1;
 while ($readed = fgets($fd))
 {
  if (strlen(trim($readed)))
  {
    echo "[$i] Traitement: ligne: $k <br />"; $k++;
  	import_db_line_csv(trim($readed), $_POST['magasin_id'], $k);
  }
 }
}
catch (Exception $ex)
{
echo "Erreur: Il y a comme un beuz..."; 
}
if ($fd)
  fclose($fd);
if ($connect)
	mysql_close($connect);
?>